package com.hll.mybatis_plus.handler;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.util.Date;

/** @author hll */
@Slf4j
@Component // 把处理器加到IOC容器中
public class MyMetaObjectHandler implements MetaObjectHandler {

  // 插入时的填充策略
  @Override
  public void insertFill(MetaObject metaObject) {
    log.info("Start insert fill.... ");
    this.setFieldValByName("createTime", new Date(), metaObject);
    this.setFieldValByName("updateTime", new Date(), metaObject);
  }

  // 更新时的填充策略
  @Override
  public void updateFill(MetaObject metaObject) {
    log.info("Start update fill.... ");
    this.setFieldValByName("updateTime", new Date(), metaObject);
  }
}
